// pages/home/home.js
Page({

  /* 页面的初始数据 */
  data: {
    // banner
    background: {},
    // 热门歌手
    singer: {},
    // 最新音乐
    newMusiclist: {},
    // 热歌榜
    hotmusicList:[]
  },

  // 获取 banner 数据
  getbanner:function(){
     wx.request({
       url: 'http://localhost:3000/banner',
       dataType: "json",
       success: (result) => {
         //  设置给background
         this.setData({
           background: result.data.banners
         })
       },
     })
  },
  // 获取 歌手 数据
  getsinger:function(){
    wx.request({
      url: 'http://localhost:3000/top/artists',
      dataType: "json",
      success: (result) => {
        //  设置给singer
        this.setData({
          singer: result.data.artists
        })
      },
    })
 },
  //  获取 新音乐
  getNewMusic: function () {
    wx.request({
      url: 'http://localhost:3000/personalized/newsong',
      dataType: "json",
      success: (result) => {
        //  设置给background
        this.setData({
          newMusiclist: result.data.result
        })
      },
    })
  },

  //  获取 热歌推荐
  getHotMusic: function () {
    wx.request({
      url: 'http://localhost:3000/playlist/track/all?id='+3778678+'&limit=10&offset=1',
      dataType: "json",
      success: (result) => {
        this.setData({
          hotmusicList: result.data.songs
        })
      },
    })
  },

  /* 生命周期函数--监听页面加载 */
  onLoad(options) {
    // 找banner
    this.getbanner()
    // 找热门歌手
    this.getsinger()
    // 找最新音乐
    this.getNewMusic()
    // 获取热歌榜单
    this.getHotMusic()
  },

  // 点击热门歌手
  singerlink:function(e) {
    // 获取当前下标
    const index = e.currentTarget.dataset.index
    // 拿到当前数据
    const singer = this.data.singer
    // 跳转页面和数据传递
    wx.navigateTo({
      url: '/pages/singerDetail/singerDetail',
      success: function (res) {
        // 数据传递给singerdetail页面
        res.eventChannel.emit('acceptDataFromOpenerPage', { data: singer[index] })
      }
    })
  },
  // 点击播放音乐
  playlink:function(e) {
    // 获取当前下标
    const index = e.currentTarget.dataset.index
    // 拿到音乐列表数据
    const musicdata = e.currentTarget.dataset.list
    // 获取歌曲id
    let mid = musicdata[index].id
    // 检查音乐是否可用的接口
    wx.request({
      url: 'http://localhost:3000/check/music?id=' +mid,
      success: (res) => {
        if (res.data.message === "ok") {
          // 定义数据对象
          const objdata = {}
          // 存储列表数据
          objdata.musiclist = musicdata
          // 存储当前播放的歌曲下标
          objdata.nowIndex = index
          wx.navigateTo({
            url: '/pages/play/play',
            success: (result) => {
              result.eventChannel.emit('acceptDataFromOpenerPage', { data: objdata})
            },          
          })       
        } else {
          // 弹框提示
          wx.showModal({
            content: '歌曲没有版权请选择其他歌曲进行播放',
            showCancel: true,
            title: '提示',
          })
        }
      }
    })
  },

  // 点击搜索按钮
  tabSearch:function(){
    wx.navigateTo({
      url: '/pages/search/search',
    })
  },
   // 点击mv精选按钮
  tabMv:function(){
    wx.navigateTo({
      url: '/pages/mv/mv',
    })
  },
   // 点击跳转个人中心
  tabUser:function(){
    wx.navigateTo({
      url: '/pages/user/user',
    })
  },
   // 点击mv精选按钮
  tabClassify:function(){
    wx.navigateTo({
      url: '/pages/classify/classify',
    })
  },
   // 点击hot精选按钮【跳去热歌榜】
  tabHot:function(){
    new Promise((resolve, reject) => {
      wx.request({
        // 热歌榜【获取歌单详情】
        url: 'http://localhost:3000/playlist/detail?id=3778678',
        success: (result) => {
            resolve(result)
        },
      })
    }).then(result=>{
      // playlist包含热歌榜所有信息
      const itemdata=result.data.playlist
      wx.navigateTo({
        url: '/pages/listdetail/listdetail',
        // 传递榜单数据
        success:function(res){
          res.eventChannel.emit('acceptDataFromOpenerPage', { data: itemdata})
        }
      })
    })
  }
})